﻿using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;

namespace LinkyPOS.Class
{
    class musteriler2: odemedurumu
    {
        linkDataContext ly = new linkDataContext();

        private int musteriID ;
        private int sistemID;
        private string isim;
        private string soyisim;
        private string telefon;      
        private int yildiz;
        private string eposta;

        public musteriler2()
        { sistemID = 0; }

        public musteriler2(int ID)
        {
            musteriID = ID;
            sistemID = 0;
        
        }

      public int MusteriID
      {
          get { return musteriID; }
          set { musteriID = value; }
      }

      public int SistemID
      {
          get { return sistemID; }
          set { sistemID = value; }
      }

      public string Isim
      {
          get { return isim; }
          set { isim = value; }
      }

      public string Soyisim
      {
          get { return soyisim; }
          set { soyisim = value; }
      }
      public string Telefon
      {
          get { return telefon; }
          set { telefon = value; }
      }

      public int Yildiz
      {
          get { return yildiz; }
          set { yildiz = value; }
      
      }

      public string Eposta
      {
          get { return eposta; }
          set { eposta = value; }
      }

        // müşteriIdsine göre müşterinin tüm detaylarını getiren metod

      public void musterigetir()
      {
          SqlConnection sqlcon = connection.baglanti;
          SqlCommand sqlcmd = new SqlCommand("select * from musteriler where musteriID=@musteriID",sqlcon);
          sqlcmd.Parameters.AddWithValue("@musteriID",musteriID);

          sqlcon.Open();
          SqlDataReader sdr=sqlcmd.ExecuteReader();
          while (sdr.Read())
          {
              
              sistemID =Convert.ToInt32(sdr["sistemID"]);
              isim = sdr["isim"].ToString();
              soyisim = sdr["soyisim"].ToString();
              telefon = sdr["telefon"].ToString();
              yildiz = Convert.ToInt32(sdr["yildiz"]);
              eposta = sdr["eposta"].ToString();
              
          }

          sqlcon.Close();

      }


        // müşterinin isminden like olan müşterileri getirecek olan metod bu metod bu öetod dışarı
      public static List<musteriler2> musterlikegetir(string ad)
      {
          List<musteriler2> mst = new List<musteriler2>();

          SqlConnection sqlcon = connection.baglanti;
          SqlCommand sqlcmd = new SqlCommand("select * from musteriler where isim like '" + ad + "%'", sqlcon);
          sqlcon.Open();

          SqlDataReader sdr = sqlcmd.ExecuteReader();
          while (sdr.Read())
          {
              musteriler2 m = new musteriler2();
              m.musteriID = Convert.ToInt32(sdr["musteriID"]);
              m.isim = sdr["isim"].ToString();
              m.soyisim = sdr["soyisim"].ToString();
              m.telefon = sdr["telefon"].ToString();

              mst.Add(m);
          }

          sqlcon.Close();
          return mst;


      }

        // müşteri bilgilerini kayıt eden metod

      public void musterikaydet()
      {

          musteriler ms = new musteriler()
          {
              musteriID = musteriID,
              sistemID = sistemID,
              isim = isim,
              soyisim = soyisim,
              telefon = telefon,
              yildiz = yildiz,
              eposta = eposta

          };

          ly.musterilers.InsertOnSubmit(ms);
          ly.SubmitChanges();

          //string[] kolonlar = { "musteriID", "sistemID", "isim", "soyisim", "telefon", "yildiz","eposta" };
          //string[] degerler = { musteriID.ToString(), sistemID, isim, soyisim, telefon, yildiz.ToString(),eposta };

          //dataCUD.ekle("musteriler", kolonlar, degerler);
      
      }

      public void sonmusteriidgetir()
      {
          SqlConnection sqlcon = connection.baglanti;
          SqlCommand sqlcmd = new SqlCommand("select top(1)* from musteriler order by musteriID desc",sqlcon);
          sqlcon.Open();
          SqlDataReader sdr = sqlcmd.ExecuteReader();
          while (sdr.Read())
          {
              musteriID = Convert.ToInt32(sdr["musteriID"]);

          }
          sqlcon.Close();
      }


    }
}
